Mimas buy and sellBollinger Bands: Calculated using a simple moving average (basis) and standard deviation (dev).
EMAs: Two exponential moving averages (EMA 5 and EMA 20) are plotted to identify short-term and long-term trends.
Price Action Patterns: The script detects higher highs and higher lows for bullish conditions, and lower highs and lower lows for bearish conditions.
Trend Strength: An exponential moving average of the price change is used to gauge the strength of the trend.
Trade Signals: Buy and sell signals are plotted on the chart when specific conditions are met, combining price action patterns, trend strength, Bollinger Bands, and EMA crossovers.
Take-Profit Levels: Dynamic take-profit levels are calculated based on recent swing highs and lows, adjusted by a user-defined multiplier. These levels are displayed on the chart using plot to draw horizontal lines.
Cari dalam skrip untuk "take profit"
Liquidity Grab Strategy (Volume Trap)🧠 Strategy Logic:
Liquidity Grab Detection:
The script looks for a sharp drop in price (bearish engulfing or breakdown candle).
However, volume remains flat (within 5% of the 20-period moving average), suggesting the move is manipulated, not genuine.
Fair Value Gap Confirmation (FVG):
It confirms that a Fair Value Gap exists — a gap between recent candle bodies that price is likely to retrace into.
This gap represents a high-probability entry zone.
Trade Setup:
A limit BUY order is placed at the base of the FVG.
Stop Loss (SL) is placed below the gap.
Take Profit (TP) is placed at the most recent swing high.
📈 How to Use It:
Add the strategy to your TradingView chart (1–5 min or 15 min works well for intraday setups).
Look for green BUY labels and plotted lines:
💚 Green = Entry price
🔴 Red = Stop loss
🔵 Blue = Take profit
The script will automatically simulate entries when conditions are met and exit either at TP or SL.
Use TradingView’s Strategy Tester to review:
Win rate
Net profit
Risk-adjusted performance
Smooth Fibonacci BandsSmooth Fibonacci Bands
This indicator overlays adaptive Fibonacci bands on your chart, creating dynamic support and resistance zones based on price volatility. It combines a simple moving average with ATR-based Fibonacci levels to generate multiple bands that expand and contract with market conditions.
## Features
- Creates three pairs of upper and lower Fibonacci bands
- Smoothing option for cleaner, less noisy bands
- Fully customizable colors and line thickness
- Adapts automatically to changing market volatility
## Settings
Adjust the SMA and ATR lengths to match your trading timeframe. For short-term trading, try lower values; for longer-term analysis, use higher values. The Fibonacci factors determine how far each band extends from the center line - standard Fibonacci ratios (1.618, 2.618, and 4.236) are provided as defaults.
## Trading Applications
- Use band crossovers as potential entry and exit signals
- Look for price bouncing off bands as reversal opportunities
- Watch for price breaking through multiple bands as strong trend confirmation
- Identify potential support/resistance zones for placing stop losses or take profits
Fibonacci Bands combines the reliability of moving averages with the adaptability of ATR and the natural market harmony of Fibonacci ratios, offering a robust framework for both trend and range analysis.
Horizontal ATR LinesDisclaimer:
This script was generated using OpenAI’s ChatGPT. I take no responsibility for the correctness, performance, or financial impact of this indicator. Use it at your own risk and discretion.
This indicator draws horizontal ATR-based levels from the last closed candle on a user-selected timeframe. It is designed for traders who want to visualize realistic volatility zones for setting dynamic support/resistance, take-profit, or stop-loss levels.
What it does:
Calculates the Average True Range (ATR) using a customizable period and timeframe.
Plots four horizontal lines:
+1 ATR and –1 ATR from the last closed candle’s close
+X ATR and –X ATR, where X is a second custom multiplier
Each level includes a compact label showing:
The price of the level
The percentage distance from the close price
Use cases:
Identify realistic intraday or swing price movement boundaries
Build volatility-aware take-profit and stop-loss zones
Visually track market compression or expansion in context
Customization:
ATR period and timeframe
Two independent ATR multipliers
Custom color settings for each group of levels
VIX Z-Score (Inverted)📘 Indicator: VIX Z-Score (Inverted) + Table
🔍 Overview
This indicator calculates the Z-Score of the VIX (Volatility Index) and inverts it to identify potential buying opportunities during periods of fear and caution during periods of extreme optimism. The Z-Score is smoothed and visually displayed alongside a dynamic info table.
⚙️ How It Works
VIX Data: The VIX (ticker: CBOE:VIX) is pulled in real time.
Z-Score Calculation:
𝑍
=
(
𝑉
𝐼
𝑋
−
mean
)
standard deviation
Z=
standard deviation
(VIX−mean)
Over a customizable lookback period (default: 50).
Inversion:
Since high VIX usually means fear (often a contrarian buying signal), we invert the Z-Score:
𝑍
inv
=
−
𝑍
Z
inv
=−Z
Smoothing:
An EMA is applied to reduce noise and false signals.
Clamping:
The Z-Score is linearly scaled and capped between +2 and -2 for easy visualization in the info table.
📊 Z-Score Table (Top-Right)
Range Interpretation Table Color
+1.5 to +2 Extreme fear → Buy zone 🟩 Green
+0.5 to +1.5 Moderate fear 🟨 Lime
–0.5 to +0.5 Neutral ⬜ Gray
–0.5 to –1.5 Growing complacency 🟧 Orange
–1.5 to –2 Extreme optimism → Caution 🟥 Red
The current Z-Score (clamped version) is shown in real time on the right-hand info panel.
🧠 How to Use It
+2 Zone (Table: Green):
Market fear is at an extreme. Historically, such conditions are contrarian bullish—possible entry zones.
–2 Zone (Table: Red):
Indicates extreme optimism and low fear. Often a signal to be cautious or take profits.
Middle range (±0.5):
Market is neutral. Avoid major decisions based solely on sentiment here.
🧪 Best Practices
Combine with price action, volume, or trend filters.
Works well on daily or 4H timeframes.
Not a standalone signal—best used to confirm or fade sentiment extremes.
Active Addresses Z-ScoreActive Addresses Z-Score Indicator
The Active Addresses Z-Score Indicator is a fundamental analysis tool designed to evaluate the relationship between Bitcoin network activity and its price movements over a specified period. This indicator aims to provide insights into whether the market is showing signs of increasing or decreasing interest in Bitcoin, based on its network usage and activity.
How to Read the Indicator
Orange Line (Price Z-Score):
This line represents the Z-Score of the price change over a defined period (e.g., 28 days). The Z-Score normalizes the price change by comparing it to the historical mean and standard deviation, essentially measuring how far the current price change is from the average.
A positive Z-Score indicates that the price change is above the historical average (a bullish signal), while a negative Z-Score means the price change is below the historical average (a bearish signal).
Gray Line (Active Addresses Z-Score):
This line represents the Z-Score of the change in active addresses over the same period. The Z-Score here normalizes the change in the number of active Bitcoin addresses by comparing it to historical data.
A positive Z-Score suggests that the number of active addresses is increasing more than usual, which can be a sign of increased market activity and potential interest in Bitcoin.
A negative Z-Score suggests that active addresses are decreasing more than usual, which may indicate reduced interest or usage of Bitcoin.
Upper and Lower Threshold Lines:
The upper and lower threshold lines (set by the user) act as Z-Score boundaries. If either the price Z-Score or the active address Z-Score exceeds the upper threshold, it can signal an overbought or overactive condition. Similarly, if the Z-Score falls below the lower threshold, it could indicate an oversold or underactive condition.
These thresholds are customizable by the user, allowing for flexible interpretation based on market conditions.
Indicator Calculation
Price Change Calculation:
The percentage change in the Bitcoin price over a specified lookback period (e.g., 28 days) is calculated as:
Price Change
=
Close
−
Close
Close
Price Change=
Close
Close−Close
This shows the relative price movement during the specified period.
Active Address Change Calculation:
Similarly, the percentage change in active addresses is calculated as:
Active Address Change
=
Active Addresses
−
Active Addresses
Active Addresses
Active Address Change=
Active Addresses
Active Addresses−Active Addresses
This shows the relative change in the number of active Bitcoin addresses over the same period.
Z-Score Calculation:
The Z-Score for both the price and active address changes is calculated as:
𝑍
=
X
−
𝜇
𝜎
Z=
σ
X−μ
Where:
X is the current change (price or active addresses),
μ (mu) is the mean (average) of the historical data over the lookback period,
σ (sigma) is the standard deviation of the historical data.
This Z-Score tells you how far the current value deviates from its historical average, normalized by the volatility (standard deviation).
Smoothing (Optional):
A simple moving average (SMA) is applied to smooth out the Z-Score values to reduce noise and provide a clearer trend.
What the Indicator Does
Signals of Bullish or Bearish Market Behavior:
The Z-Score of Price tells you how strong or weak the price movement is relative to its past performance.
The Z-Score of Active Addresses reveals whether more users are interacting with the Bitcoin network, which can be an indication of growing interest or market activity.
When both the price and active address Z-Scores are high, it may indicate a strong bull market, while low Z-Scores may point to a bear market or decreasing interest.
Overbought/Oversold Conditions:
The upper and lower threshold lines help you visualize when the Z-Scores for either price or active addresses have reached extreme values, signaling potential overbought or oversold conditions.
For example, if the Price Z-Score exceeds the upper threshold (e.g., +2), it might indicate that the price has risen too quickly, and a correction may be due. Conversely, if it falls below the lower threshold (e.g., -2), it may indicate a potential buying opportunity.
Important Note on Activity and Price Movements:
After Rapid Price Increases:
A sharp increase in Bitcoin’s price followed by a spike in active addresses can be interpreted as a bearish signal. High network activity after a rapid price surge might indicate that investors are taking profits or that speculative interest is peaking, potentially signaling an upcoming correction or reversal.
After Extreme Price Declines:
Conversely, high network activity after a significant price drop may indicate a bottoming signal. A surge in active addresses during a price decline could suggest increased buying interest and potential accumulation, signaling that the market may be finding support and a reversal may be imminent.
Customization and Flexibility
The lookback period (default: 28 days) can be adjusted to suit different trading strategies or time horizons.
The smoothing length (default: 7 periods) allows for smoothing the Z-Score, making it easier to detect longer-term trends and reduce noise.
The upper and lower threshold values are fully customizable to adjust the indicator’s sensitivity to market conditions.
Conclusion
The Active Addresses Z-Score Indicator combines network activity with price data to give you a deeper understanding of the Bitcoin market. By analyzing the relationship between price changes and active address changes, this indicator helps you assess whether the market is experiencing unusual activity or if Bitcoin is trending in an extreme overbought or oversold condition.
It is a powerful tool for fundamental analysis and can complement traditional technical indicators for a more comprehensive trading strategy.
Smart FlexRange Breakout [The_lurker]The Smart FlexRange Breakout tool aims to identify trading opportunities based on price breakouts of dynamic levels (CALL, PUT) with a dotted centerline and the ability to select the applicable market. The tool relies on candlestick analysis over a specific time period (such as 3 hours). Candle data (searchHours) is collected to identify the most significant candle based on candlestick patterns and trading volume during the selected timeframe. Breakout levels and take-profit (TP) targets are then plotted, along with buy and sell signals, breakout notifications, and up/down trend lines based on Pivot Points.
The tool is run according to the selected timeframe.
Practical Use
1- Setup: Adjust the market, timeframe, number of hours, and time zone to suit the trader's needs.
2- Trading: Monitor signals (BUY/SELL) and TP levels to determine entry and exit points.
3- Trend Lines: Use them to understand the overall trend and confirm signals.
---
1. Objective: Identify trading opportunities based on price breakouts
- Trading opportunities: The indicator is designed to help traders identify moments when significant price movements are likely, allowing them to enter buy or sell trades based on market changes.
- Price breakouts: The indicator focuses on moments when prices break through key levels (resistance or support). A breakout occurs when the price exceeds a resistance level (up) or breaks a support level (down), indicating a potential continuation of the movement in the same direction.
- Dynamic: Resistance and support levels are not static; rather, they are calculated based on candlestick analysis over a specific period of time, making them adaptive to current market conditions.
---
2. Dynamic levels (resistance and support levels)
- Resistance levels: These represent prices that the price is difficult to break above, defined here as the high of the most significant candle during the specified period.
- Support levels: These represent prices below which the price is difficult to fall, defined as the low of the most significant candle.
- Dynamic: These levels are recalculated every new search period (searchHours), meaning they change based on the latest market data, unlike traditional static levels.
---
3. Adding a Dotted Center Line
- Center Line: A horizontal dotted line is drawn at the midpoint between the high and low of the most significant candle.
- Purpose:
- Provides a visual reference point for determining the current price position relative to support and resistance levels.
- Helps assess whether the price is moving toward a breakout (near resistance) or a breakout (near support).
- Dotted: The dotted pattern distinguishes it from the solid upper and lower lines, making it easier to distinguish visually.
---
4. Relying on candlestick analysis over a specific time period (searchHours)
- Candlestick Analysis: The indicator examines candlesticks to determine which ones have the most influence on price movement.
- Timeframe (searchHours):
- The user specifies the number of hours (1-6) for candle analysis, which determines the range of data the indicator relies on.
- Example: If searchHours = 3 and timeframe = 30 minutes, 6 candles are analyzed (3 hours ÷ 30 minutes).
- Flexibility: This period can be adjusted to suit different markets (such as volatile cryptocurrencies or more stable Forex).
---
5. Determining the Most Important Candle Based on Candle Patterns and Volume
- The most important candle: is the candle believed to have the greatest impact on price movement based on specific criteria.
- Candle Patterns:
- Candles are analyzed using a candlestick pattern library (such as Engulfing, Hammer, Doji).
- Reversal patterns (such as Morning Star, Shooting Star) are given a high importance score (100 points) because they indicate potential trend changes.
- Trading Volume:
- The trading volume of each candle is measured and compared to the maximum and minimum during the period.
- Volume is calculated as a percentage (0-100) and added to the pattern score to determine the most significant candle.
- Result: The candle with the highest score (patterns + volume) is used to determine support and resistance levels.
---
6. Timeframe
- Time interval: The user selects a time frame for the candles (15, 30, or 60 minutes).
- Importance:
- Determines the number of candles analyzed during the searchHours period.
- Affects the accuracy and speed of the signals (shorter timeframe = faster but less reliable signals; longer timeframe = slower but more reliable signals).
- Example: If the timeframe is 60 minutes and searchHours is 3, only 3 candles are analyzed.
---
7. Drawing Breakout Levels and Take Profit Targets (TP)
- Breakout Levels:
- Upper line (resistance): Drawn at the highest price of the most significant candle and is labeled "CALL".
- Lower line (support): Drawn at the lowest price of the most important candle and is called "PUT."
- These lines represent levels where a breakout is expected to lead to a strong price movement.
- Take Profit Targets (TP):
- Up to 8 bullish (above the upper line) and bearish (below the lower line) TP levels are calculated.
- They are calculated based on a percentage (tpPercentage) added or subtracted from the base lines.
- Example: If tpPercentage = 0.6% and the high price = 100, then bullish TP1 = 100.6, TP2 = 101.2, etc.
- Labels: Labels are drawn for each TP level indicating the value and level (TP1, TP2, etc.).
---
8. Buy and Sell Signals
- Buy (BUY) signal:
- Generated when the price breaks the upper line (ta.crossover).
- The "BUY" label is drawn with the redrawing of the TP levels.
- Sell signal (SELL):
- Generated when the price breaks the lower line (ta.crossunder).
- The "SELL" label is drawn with the redrawing of the TP levels.
- Purpose: To provide clear signals to the trader for making trade entry decisions.
=========================================================================
Thank you, n00btraders.
For using the import library: n00btraders/Timezone/1
For using the import library: The_lurker/AllCandlestickPatternsLibrary/1
========================================================================
Disclaimer:
The information and publications are not intended to be, nor do they constitute, financial, investment, trading, or other types of advice or recommendations provided or endorsed by TradingView.
تهدف أداة Smart FlexRange Breakout إلى تحديد فرص التداول بناءً على اختراقات الأسعار للمستويات الديناميكية (CALL، PUT) مع خط مركزي منقط، مع إمكانية اختيار السوق المناسب. تعتمد الأداة على تحليل الشموع اليابانية على مدى فترة زمنية محددة (مثل 3 ساعات). تُجمع بيانات الشموع (searchHours) لتحديد أهم شمعة بناءً على أنماط الشموع وحجم التداول خلال الإطار الزمني المحدد. ثم تُرسم مستويات الاختراق وأهداف جني الأرباح (TP)، بالإضافة إلى إشارات البيع والشراء، وإشعارات الاختراق، وخطوط الاتجاه الصعودي/الهبوطي بناءً على نقاط المحور.
يتم تشغيل الاداه حسب الفاصل المختار timeframe
الاستخدام العملي
1- الإعداد: اضبط السوق، والإطار الزمني، وعدد الساعات، والمنطقة الزمنية لتناسب احتياجات المتداول.
2- التداول: راقب إشارات (الشراء/البيع) ومستويات جني الأرباح لتحديد نقاط الدخول والخروج.
3- خطوط الاتجاه: استخدمها لفهم الاتجاه العام وتأكيد الإشارات.
1. الهدف: تحديد فرص التداول بناءً على اختراقات الأسعار
- فرص التداول: صُمم هذا المؤشر لمساعدة المتداولين على تحديد اللحظات التي يُحتمل فيها حدوث تحركات سعرية كبيرة، مما يسمح لهم بالدخول في صفقات شراء أو بيع بناءً على تغيرات السوق.
- اختراقات الأسعار: يُركز المؤشر على اللحظات التي تخترق فيها الأسعار مستويات رئيسية (مقاومة أو دعم). يحدث الاختراق عندما يتجاوز السعر مستوى مقاومة (صعودًا) أو يخترق مستوى دعم (هبوطًا)، مما يُشير إلى احتمال استمرار الحركة في نفس الاتجاه.
- ديناميكي: مستويات المقاومة والدعم ليست ثابتة؛ بل تُحسب بناءً على تحليل الشموع اليابانية على مدى فترة زمنية محددة، مما يجعلها مُكيفة مع ظروف السوق الحالية.
2. المستويات الديناميكية (مستويات المقاومة والدعم)
- مستويات المقاومة: تُمثل هذه الأسعار التي يصعب على السعر تجاوزها، وتُعرف هنا بأنها ارتفاع الشمعة الأكثر أهمية خلال الفترة المحددة.
- مستويات الدعم: تُمثل هذه الأسعار التي يصعب على السعر الانخفاض دونها، وتُعرف بأنها أدنى مستوى للشمعة الأكثر أهمية.
- ديناميكي: تُعاد حساب هذه المستويات مع كل فترة بحث جديدة (ساعات البحث)، مما يعني أنها تتغير بناءً على أحدث بيانات السوق، على عكس المستويات الثابتة التقليدية.
3. إضافة خط مركزي منقط
- خط المركز: يُرسم خط أفقي منقط عند نقطة المنتصف بين أعلى وأدنى شمعة ذات أهمية.
- الغرض:
- يوفر نقطة مرجعية بصرية لتحديد وضع السعر الحالي بالنسبة لمستويات الدعم والمقاومة.
- يساعد في تقييم ما إذا كان السعر يتحرك نحو اختراق (بالقرب من المقاومة) أو اختراق (بالقرب من الدعم).
- منقط: يُميزه النمط المنقط عن الخطوط العلوية والسفلية المتصلة، مما يُسهّل تمييزه بصريًا.
4. الاعتماد على تحليل الشموع اليابانية على مدى فترة زمنية محددة (ساعات البحث)
- تحليل الشموع اليابانية: يفحص المؤشر الشموع اليابانية لتحديد أيها الأكثر تأثيرًا على حركة السعر.
- الإطار الزمني (ساعات البحث):
- يُحدد المستخدم عدد الساعات (من 1 إلى 6) لتحليل الشموع، والذي يُحدد نطاق البيانات التي يعتمد عليها المؤشر.
- مثال: إذا كانت ساعات البحث = 3 والإطار الزمني = 30 دقيقة، فسيتم تحليل 6 شموع (3 ساعات ÷ 30 دقيقة).
- المرونة: يُمكن تعديل هذه الفترة لتناسب الأسواق المختلفة (مثل العملات المشفرة المتقلبة أو سوق الفوركس الأكثر استقرارًا).
5. تحديد الشمعة الأكثر أهمية بناءً على أنماط الشموع وحجم التداول
- الشمعة الأكثر أهمية: هي الشمعة التي يُعتقد أن لها التأثير الأكبر على حركة السعر بناءً على معايير محددة.
- أنماط الشموع:
- يتم تحليل الشموع باستخدام مكتبة أنماط الشموع (مثل شمعة الابتلاع، وشمعة المطرقة، وشمعة الدوجي).
- تُمنح أنماط الانعكاس (مثل نجمة الصباح، ونجم الشهاب) درجة أهمية عالية (100 نقطة) لأنها تُشير إلى تغيرات محتملة في الاتجاه.
- حجم التداول:
- يُقاس حجم تداول كل شمعة ويُقارن بالحد الأقصى والأدنى خلال الفترة.
- يُحسب الحجم كنسبة مئوية (0-100) ويُضاف إلى درجة النمط لتحديد الشمعة الأكثر أهمية.
- النتيجة: تُستخدم الشمعة ذات أعلى درجة (الأنماط + الحجم) لتحديد مستويات الدعم والمقاومة.
٦. الإطار الزمني
- الفاصل الزمني: يختار المستخدم إطارًا زمنيًا للشموع (١٥، ٣٠، أو ٦٠ دقيقة).
- الأهمية:
- يحدد عدد الشموع المُحللة خلال فترة ساعات البحث.
- يؤثر على دقة وسرعة الإشارات (الإطار الزمني الأقصر = إشارات أسرع ولكن أقل موثوقية؛ الإطار الزمني الأطول = إشارات أبطأ ولكن أكثر موثوقية).
- مثال: إذا كان الإطار الزمني ٦٠ دقيقة وساعات البحث ٣، فسيتم تحليل ٣ شموع فقط.
---
٧. رسم مستويات الاختراق وأهداف جني الأرباح (TP)
- مستويات الاختراق:
- الخط العلوي (المقاومة): يُرسم عند أعلى سعر للشمعة الأكثر أهمية ويُسمى "CALL".
- الخط السفلي (الدعم): يُرسم عند أدنى سعر للشمعة الأكثر أهمية ويُسمى "PUT".
- تمثل هذه الخطوط المستويات التي يُتوقع أن يؤدي فيها الاختراق إلى حركة سعرية قوية.
- أهداف جني الأرباح (TP):
- يتم حساب ما يصل إلى 8 مستويات جني أرباح صعودية (فوق الخط العلوي) وهبوطية (تحت الخط السفلي).
- يتم حسابها بناءً على نسبة مئوية (tpPercentage) تُضاف أو تُطرح من خطوط الأساس.
- مثال: إذا كانت نسبة جني الأرباح = 0.6% وكان أعلى سعر = 100، فإن هدف الربح الصعودي الأول = 100.6، وهدف الربح الثاني = 101.2، وهكذا.
- العلامات: تُرسم علامات لكل مستوى جني أرباح تشير إلى القيمة والمستوى (TP1، TP2، وهكذا).
---
8. إشارات الشراء والبيع
- إشارة الشراء (BUY):
- تُولّد عند اختراق السعر للخط العلوي (ta.crossover).
- تُرسم علامة "الشراء" مع إعادة رسم مستويات جني الأرباح.
- إشارة البيع (SELL):
- تُولّد عند اختراق السعر للخط السفلي (ta.crossunder). - يُرسم مؤشر "بيع" مع إعادة رسم مستويات جني الأرباح.
- الغرض: توفير إشارات واضحة للمتداول لاتخاذ قرارات دخول الصفقة.
==========================================================================
شكرًا لكم، أيها المتداولون الجدد.
لاستخدام مكتبة الاستيراد: n00btraders/Timezone/1
لاستخدام مكتبة الاستيراد: The_lurker/AllCandlestickPatternsLibrary/1
==============================================================================
إخلاء مسؤولية:
لا يُقصد بهذه المعلومات والمنشورات أن تكون، ولا تُشكل، نصائح أو توصيات مالية أو استثمارية أو تجارية أو أي نوع آخر من النصائح أو التوصيات المُقدمة من TradingView أو المُعتمدة منها.
Anomaly Counter-Trend StrategyA mean-reversion style strategy that automatically spots unusually large price moves over a configurable lookback period and takes the opposite side, with full risk-management, commission and slippage modeling—built in Pine Script® v6.
🔎 Overview
ACTS monitors the percent-change over the past N minutes and, when that move exceeds your chosen threshold, enters a counter-trend position (short on a strong rise; long on a sharp fall). It’s ideal for markets that often “overshoot” and snap back, and can be applied on any symbol or timeframe.
⚙️ Key Features
Anomaly Detection: Detect abnormal price swings based on a user-defined % change over a lookback period.
Counter-Trend Entries: Auto-enter short on rise anomalies, long on fall anomalies (with seamless flat↔reverse transitions).
Risk Management: Configurable stop-loss and take-profit in ticks per trade.
Realistic Modeling: Simulates commissions (0.05 % default), slippage (2 ticks), and percent-of-equity sizing.
Immediate Bar-Close Execution: Orders processed on bar close for faster fills.
Visual Aids: Optional on-chart BUY/SELL triangles and background highlights during anomaly periods.
⚙️ Inputs
Input Default Description
Percentage Threshold (%) 2.00 Min % move over lookback to trigger an anomaly.
Lookback Period (Minutes) 15 Number of minutes over which to measure change.
Stop Loss (Ticks) 100 Distance from entry for stop-loss exit.
Take Profit (Ticks) 200 Distance from entry for take-profit exit.
Plot Trade Signal Shapes (on/off) true Show BUY/SELL triangles on chart.
Highlight Anomaly Background true Shade background during anomaly bars.
📊 How to Use
Add to Chart: Apply the script to any ticker & timeframe.
Tune: Adjust your percentage threshold and lookback to match each instrument’s volatility.
Review Backtest: Check built-in strategy performance (drawdown, Sharpe, etc.) under the Strategy Tester tab.
Go Live: Once optimized, link to alerts or your trade execution system.
⚠️ Disclaimer
This script is provided “as-is” for educational purposes and backtesting only. Past performance does not guarantee future results. Always backtest thoroughly, manage your own risk, and consider market conditions before live trading.
Enjoy experimenting—and may your counter-trend entries catch the next big snapback!
UTSStrategyHelperLibrary "UTSStrategyHelper"
TODO: add library description here
stopLossPrice(sig, atr, factor, isLong)
Calculates the stop loss price using a distance determined by ATR multiplied by a factor. Example for Long trade SL: PRICE - (ATR * factor).
Parameters:
sig (float)
atr (float) : (float): The value of the atr.
factor (float)
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
takeProfitPrice(sig, atr, factor, isLong)
Calculates the take profit price using a distance determined by ATR multiplied by a factor. Example for Long trade TP: PRICE + (ATR * factor). When take profit price is reached usually 50 % of the position is closed and the other 50 % get a trailing stop assigned.
Parameters:
sig (float)
atr (float) : (float): The value of the atr.
factor (float)
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
trailingStopPrice(initialStopPrice, atr, factor, priceSource, isLong)
Calculates a trailing stop price using a distance determined by ATR multiplied by a factor. It takes an initial price and follows the price closely if it changes in a favourable way.
Parameters:
initialStopPrice (float) : (float): The initial stop price which, for consistency also should be ATR * factor behind price: e.g. Long trade: PRICE - (ATR * factor)
atr (float) : (float): The value of the atr. Ideally the ATR value at trade open is taken and used for subsequent calculations.
factor (float)
priceSource (float) : (float): The current price.
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
hasGreaterPositionSize(positionSize)
Determines if the strategy's position size has grown since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasSmallerPositionSize(positionSize)
Determines if the strategy's position size has decreased since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasUnchangedPositionSize(positionSize)
Determines if the strategy's position size has changed since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
exporthasLongPosition(positionSize)
Determines if the strategy has an open long position.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasShortPosition(positionSize)
Determines if the strategy has an open short position.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasAnyPosition(positionSize)
Determines if the strategy has any open position, regardless of short or long.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasSignal(value)
Determines if the given argument contains a valid value (means not 'na').
Parameters:
value (float) : (float): The actual value.
Returns: (bool): A boolean value.
Key Recent Highs and LowsKey Recent Highs & Lows — Session‐Aware Market Structure
TL;DR
This tool plots the most important intraday price extremes for every U.S.‑equity trading segment—Early Premarket • Western Premarket • Regular Hours • Post‑Market Hours • Yesterday’s Range—and labels them so you can trade break‑outs, retests and mean‑reversion with instant context.
📐 Theory & Why These Levels Matter
Liquidity Pools
Visible session extremes attract resting orders (stop‑losses, take‑profits, opening prints). Price often accelerates into them and reacts at them.
Market Memory
The previous day’s high/low is a widely‑watched pivot for gap fills, overnight inventory corrections and multi‑day breakouts.
Mean‑Reversion Windows
Statistically, pre‑ and post‑market ranges are thin; an aggressive spike outside those bands often retraces when full liquidity returns.
Break‑Out Confirmation
A true breakout isn’t just a tick above RTH‑high—it usually closes or at least consolidates above the prior extreme. Seeing all bands lets you gauge whether a push is “real” or just probing thinner sessions.
Put simply, these levels help you decide:
Break‑out ➜ trade in the direction of expansion past a session extreme with follow‑through.
Fade/Mean‑Revert ➜ fade a spike that tags an extreme without commitment (e.g., hits Western‑Premkt‑High then stalls before RTH).
🔍 What the Script Draws
Session (UTC‑4 EST) Default Color / Style Typical Use‑Case
Early Premarket 4 – 7 AM Thick semi‑transparent orange line detect overnight retail spikes / fade plays
Western Premarket 7 – 9 : 30 AM Dashed orange‑red breakout watch as U.S. brokers open
Regular Session (RTH) 9 : 30 – 16 : 00 Bold teal dotted line core intraday structure; classic highs/lows
Post‑Market 16 – 23 : 59 Soft indigo band after‑hours news moves, earnings fades
Previous‑Day RTH Solid teal gap‑fill targets, trend continuation filters
(All colors, thicknesses and transparencies are editable in the settings.)
✨ Features
Real‑Time Updates
Levels refresh tick‑by‑tick inside their own session—no repainting later.
One‑Click Visibility Toggles
Show or hide any session extreme independently.
Clean Auto‑Labels
Optional right‑edge tags (“RTH High”, “Premkt Low”, etc.) keep your chart readable even when lines overlap.
Automatic Daily Reset
At midnight Eastern, buffers clear and yesterday’s extremes roll into the “Prev‑Day” pair.
Zero‑Noise Design
Transparencies and line styles are tuned so you can overlay on any symbol / timeframe without drowning candles.
📈 How to Trade with It
Intraday Breakout Strategy
Mark confluence (e.g., price pushes through Western Premkt High and Yesterday’s High).
Wait for a pullback that holds above the reclaimed band.
Enter with stop under that session line; target next band or measured‑move.
Fade / Mean‑Reversion
Pre‑market headline sends price 5 % above Early Premkt High.
Volume dries up before RTH open.
Short into exhaustion; cover near Western Premkt High or VWAP.
Gap‑Fill & Trend Days
Cash open gaps above Prev‑Day High.
If first 15‑min candle closes back inside yesterday’s range, bias shifts to downside fade.
If it holds above, treat gap as breakout and track RTH High extensions.
Pair it with volume‑profile, VWAP, or momentum oscillators for even higher‑confidence setups.
⚙️ Settings Cheat‑Sheet
Setting Effect
Show Regular / Premarket / Post‑market High/Low Master visibility per session
Show Previous Day High/Low Toggle yesterday’s anchor range
Show Session Labels Turn the right‑edge tags on/off
Style Panel Change each line’s color, width, transparency, dash/dot
🛠️ Best Practices
Works on any intraday timeframe (1‑min to 1‑hour).
Crypto or 24 h markets: adjust session times to match your exchange.
Combine with alerts (e.g., “price crossing RTH High”) for hands‑free monitoring.
Put KRHL on your chart and you’ll never wonder which high matters most again—because they’re all right there, clearly labeled and color‑coded. Trade breakouts or fades with confidence, armed with the exact market structure everyone else is watching.
ZenLab ATR FNSThis indicator was created specifically for Zen Labs which includes a custom ATR (Average True Range) table that displays the ATR value for a selected period of candles.
ATR is a volatility indicator that measures the average range between high and low prices over a given number of periods. It helps traders assess how much an asset typically moves, providing valuable information for setting stop losses, take profits, or identifying market conditions. It adapts to changing market conditions, making it useful across different timeframes and asset classes.
How the ATR Indicator Works:
The ATR is based on the concept of True Range (TR), which is the greatest of the following three values:
- Current High minus Current Low
- Absolute value of Current High minus Previous Close
- Absolute value of Current Low minus Previous Close
Averaging the True Range:
Once the True Range is calculated for each period, the ATR is computed by averaging these True Ranges over a set number of periods and is displayed in the table.
Interpreting the ATR:
- A higher ATR value indicates higher volatility—prices are moving more significantly.
- A lower ATR value indicates lower volatility—prices are more stable and less active.
Enjoy!
- Rebel Empire
Guppy Multiple Moving Average (GMMA)The GMMA Momentum Indicator plots 12 EMAs on your chart, divided into two groups:
Short-term EMAs (6 lines, default periods: 3, 5, 8, 10, 12, 15): Represent short-term trader sentiment and momentum.
Long-term EMAs (6 lines, default periods: 30, 35, 40, 45, 50, 60): Reflect long-term investor behavior and broader market trends.
By analyzing the interaction between these two groups, the indicator identifies:
Bullish and bearish trends based on the relative positions of the short- and long-term EMAs.
Momentum strength through the spread or convergence of the EMAs.
Potential reversals or breakouts via compression signals.
This PineScript version enhances the traditional GMMA by adding visual cues like background colors, bearish signals, and compression detection, making it ideal for swing traders seeking clear, actionable insights.
The GMMA Momentum Indicator provides several key features:
1. Trend Identification
Bullish Trend: When the short-term EMAs (green lines) are above the long-term EMAs (blue lines) and spreading apart, it signals strong upward momentum. The chart background turns light green to highlight this condition.
Bearish Trend: When the short-term EMAs cross below the long-term EMAs and converge, it indicates downward momentum. The background turns light red, and an orange downward triangle appears above the bar to mark a new bearish signal.
2. Momentum Analysis
The spread between the short-term EMAs reflects the strength of short-term momentum. A wide spread suggests strong momentum, while a tight grouping indicates weakening momentum or consolidation. Similarly, the long-term EMAs act as dynamic support or resistance, guiding traders on the broader trend.
3. Compression Detection
Compression occurs when both the short-term and long-term EMAs converge, signaling low volatility and a potential breakout or reversal. A yellow upward triangle appears below the bar when compression is detected, alerting traders to watch for price action.
4. Visual Cues
Green short-term EMAs: Show short-term trader activity.
Blue long-term EMAs: Represent long-term investor sentiment.
Background colors: Light green for bullish trends, light red for bearish trends, and transparent for neutral conditions.
Orange downward triangles: Mark new bearish trends.
Yellow upward triangles: Indicate compression, hinting at potential breakouts.
How to Use the GMMA Momentum Indicator for Swing Trading
Swing trading involves capturing price moves over days to weeks, and the GMMA Momentum Indicator is an excellent tool for this strategy. Here’s how to use it effectively:
1. Identifying Trade Entries
Buy Opportunities:
Look for a bullish trend (green background) where the short-term EMAs are above the long-term EMAs and spreading apart, indicating strong momentum.
A compression signal (yellow triangle) followed by a breakout above resistance or a bullish candlestick pattern can confirm an entry.
Example: On a daily chart, if the short-term EMAs cross above the long-term EMAs and the background turns green, consider entering a long position, especially if volume supports the move.
Sell Opportunities:
Watch for a bearish signal (orange downward triangle) or a bearish trend (red background) where the short-term EMAs cross below the long-term EMAs.
Example: If the short-term EMAs collapse below the long-term EMAs and an orange triangle appears, it may signal a shorting opportunity or a time to exit longs.
2. Managing Trades
Use the long-term EMAs as dynamic support (in uptrends) or resistance (in downtrends) to set stop-loss levels or trail stops.
Monitor the spread of the short-term EMAs. A widening spread suggests the trend is strong, while convergence may indicate it’s time to take profits or tighten stops.
3. Anticipating Reversals
Compression signals (yellow triangles) highlight periods of low volatility, often preceding significant price moves. Combine these with price action (e.g., breakouts or reversals) or other indicators (e.g., RSI or volume) for confirmation.
Example: If a compression signal appears near a key support level and the price breaks upward, it could signal the start of a new bullish swing.
4. Best Practices
Timeframes: The indicator works well on daily or 4-hour charts for swing trading, but you can adjust the EMA periods for shorter (e.g., 1-hour) or longer (e.g., weekly) timeframes.
Confirmation: Combine the GMMA with other tools like support/resistance levels, candlestick patterns, or oscillators (e.g., MACD) to reduce false signals.
Risk Management: Always use proper position sizing and stop-losses, as EMAs are lagging indicators and may produce delayed signals in choppy markets.
Triangle Breakout Strategy with TP/SL, EMA Filter📌 Triangle Breakout Strategy with TP/SL, EMA Filters, and Backtest – Explained.
✅ 1. Pattern Detection – Triangle Breakout
The script scans for triangle patterns by detecting local pivot highs and pivot lows.
It uses two recent highs and two recent lows to draw converging trendlines (upper and lower boundaries of the triangle).
If the price breaks above the upper trendline, a bullish breakout signal is generated.
🎯 2. TP (Take Profit) & SL (Stop Loss)
When a bullish breakout is detected:
A buy order is placed using strategy.entry.
TP and SL levels are calculated relative to the current close price:
TP = 3% above the entry price
SL = 1.5% below the entry price
These are defined using strategy.exit.
📊 3. EMA Filter
An optional filter checks if:
Price is above both EMA 20 and EMA 50
Only if this condition is met, the strategy allows a long entry.
You can toggle the filter on or off with useEMAFilter.
📈 4. Backtesting with Strategy Tester
This script uses strategy() instead of indicator() to enable TradingView’s built-in backtest engine.
Every buy entry and exit (based on TP or SL) is recorded.
📌 5. Visuals
EMA 20 and EMA 50 lines are plotted on the chart.
A label is shown when a breakout is detected: "Breakout Up"
Results (profit, win rate, drawdown, etc.) can be viewed in the Strategy Tester panel.
Timeframe StrategyThis is a multi-timeframe trading strategy inspired by Ross Cameron's style, optimized for scalping and trend-following across various timeframes (1m, 5m, 15m, 1h, and 1D). The strategy integrates a comprehensive set of technical indicators, dynamic risk management, and visual tools.
Core Features
Dynamic Take Profit, Stop Loss & Trailing Stop
> Separate settings per timeframe for:
-TP% (Take Profit)
-SL% (Stop Loss)
-Trailing Stop %
-Cooldown bars
> Configurable via UI inputs.
>Smart Entry Conditions
Bullish entry: EMA9 crossover EMA20 and EMA50 > EMA200
Bearish entry: EMA9 crossunder EMA20 and EMA50 < EMA200
>Additional confirmation filters:
-Volume Filter (enabled/disabled via UI)
-Time Filter (e.g., only between 15:00–20:00 UTC)
-Spike Filter: rejects high-volatility candles
-RSI Filter: above/below 50 for trend confirmation
-ADX Filter (only applied on 1m, e.g., ADX > 15)
-Micro-Volatility Filter: minimum range percentage (1m only)
-Trend Filter (1m only): price must be above/below EMA200
>Trailing Stop Logic
-Configurable for each timeframe.
- Optional via toggle (use_trailing).
>Trade Cooldown Logic
-Prevents consecutive trades within X bars, configurable per timeframe.
>Technical Indicators Used
-EMA 9 / 20 / 50 / 200
-VWAP
-RSI (14)
-ATR (14) for volatility-based spike filtering
-Custom-calculated ADX (14) (manually implemented)
>Visual Elements
🔼/🔽 Entry signals (long/short) plotted on the chart.
📉 Table in bottom-left:
Displays current values of EMA/VWAP/volume/ATR/ADX.
> Optional "Tab info" panel in top-right (toggleable):
-Timeframe & strategy settings
-Live status of filters (volume, time, cooldown, spike, RSI, ADX, range, trend)
-Uses emoji (✅ / ❌) for quick diagnostics.
>User Customization
-Inputs per timeframe for all key parameters.
-Toggle switches for:
-Trailing stop
-Volume filter
-Info table visibility
This strategy is designed for active traders seeking a balance between momentum entry, risk control, and adaptability across timeframes. It's ideal for backtesting quick reversals or breakout setups in fast markets, especially at lower timeframes like 1m or 5m.
VWAP table with color
## 📊 VWAP Table with Color – Clear VWAP Deviation at a Glance
This script displays a **VWAP (Volume-Weighted Average Price)** table in a non-intrusive, color-coded panel on your chart. It helps you **quickly assess where the current price stands relative to VWAP**, classified into sigma bands (standard deviations). The goal is to provide valuable VWAP insight **without cluttering the chart with multiple lines**.
---
### 🔍 Purpose & Concept
VWAP is a powerful tool used by institutional traders to measure the average price an asset has traded at throughout the day, based on both volume and price.
In this script:
- We **do not plot traditional VWAP lines** with multiple ±1σ, ±2σ, etc., on the chart.
- Instead, we **summarize VWAP and its relative position in a table**, color-coded by deviation.
- This provides the **same information**, but in a **cleaner, minimal, and visually digestible format**.
---
### 🧠 VWAP Deviation Classification
The script calculates how far the current price is from the VWAP, in units of **standard deviation (σ)**.
The formula is:
```plaintext
VWAP Delta σ = (Current Price - VWAP) / Standard Deviation
```
This gives you a normalized value for deviation from VWAP, and it is **clamped between -3 and +3** to avoid extreme outliers.
Each range is color-coded and classified as:
| VWAP Δσ | Zone | Interpretation | Color |
|---------|---------------|------------------------------------------|--------------|
| -3σ | Far Below | Strongly below VWAP – potentially oversold | 🔴 Red |
| -2σ | Below | Below VWAP – bearish territory | 🟠 Orange |
| -1σ | Slightly Below| Slightly under VWAP – weak signal | 🟡 Yellow |
| 0σ | At VWAP | Price is around VWAP – neutral zone | ⚪ Gray |
| +1σ | Slightly Above| Slightly above VWAP – weak bullish | 🟢 Lime Green |
| +2σ | Above | Above VWAP – bullish signal | 🟢 Green |
| +3σ | Far Above | Strongly above VWAP – potentially overbought | 🟦 Teal |
This **compact summary in the table** provides a clear situational view while keeping the chart clean.
---
### ⚙️ User Customization
Users can configure:
- **VWAP σ Multiplier** (default 0.1) to set the width of the optional VWAP band on the chart.
- **Table Position** (Top Center, Bottom Right, etc.).
- **Text Size** and **Text Color**.
- **Hide VWAP logic**: VWAP data can be hidden automatically on higher timeframes (e.g., daily or weekly).
- **Enable/disable the VWAP ±σ band lines** (optional visual aid).
---
### 📐 Technical Highlights
- VWAP is recalculated each day using `ta.vwap(hlc3, isNewPeriod, 1)`.
- The band width uses standard deviation and the selected multiplier: `VWAP ± σ * multiplier`.
- Table updates dynamically with the new VWAP values each day.
- To **avoid floating-point rounding issues**, `vwapDelta` is rounded before comparison, ensuring correct background color display.
---
### ✅ Why Use This?
- Keeps your chart **visually clean and readable**.
- Gives **immediate context** to current price action relative to VWAP.
- Helps **discretionary traders** or **scalpers** decide whether price is stretched too far from the mean.
- Easier than tracking multiple σ bands manually.
---
### Example Usage:
- On intraday timeframes, you can identify price exhaustion as it hits ±2σ or ±3σ.
- On a 5-minute chart, if price touches `+3σ`, you may consider taking profits on longs.
- On reversal setups, watch for price at `-3σ` with bullish divergence.
---
### 🧩 Future Enhancements (Optional Ideas)
- Add alerts for when `vwapDelta` crosses thresholds like ±2σ or ±3σ.
- Let user select the timeframe for VWAP source (e.g., 1H, 5M, etc.).
- Extend to display VWAP on session or weekly basis.
---
Let me know if you want a version of this script formatted and cleaned up for direct TradingView publication (with annotations, credits, and formatting). Would you like that?
Daily Breakout + Daily Shadow By RouroThis script is a Pine v5 strategy designed to detect daily candle body breakouts and execute them on any intraday timeframe, while also providing:
Daily Data Retrieval
Using request.security(..., "D", ...) it fetches the OHLC and timestamp of the daily candle, regardless of the chart’s current timeframe.
Calculation of Yesterday’s and Day-Before-Yesterday’s Bodies
b1High and b1Low → the high/low of yesterday’s daily candle body
b2High and b2Low → the high/low of the previous day’s body
Detection of the First Intraday Bar After a New Day
By using ta.change(time("D")), it marks the start of each new trading day.
Drawing the Previous Day’s “Shadow” on the Chart
It overlays a box (box.new) and two wick lines (line.new) with configurable colors and transparency, so you can clearly see the full range of yesterday’s candle on any intraday chart.
Automatic End-of-Day Position Closure
It will automatically close any open position at the start of the next day to avoid unintended rollovers.
Entry Signals
On the very first intraday bar after the daily close:
Long if yesterday’s close broke above the body of the day before yesterday
Short if yesterday’s close broke below the body of the day before yesterday
…which triggers a strategy.entry at the intraday open.
Fully Customizable Stop-Loss and Take-Profit
SL options:
Opposite end of yesterday’s body
Fixed pips from entry
A risk-reward ratio on yesterday’s wick
Optional “safety SL” in fixed pips that overrides the above
TP options:
Fixed pips
Yesterday’s wick extreme (high/low)
Partial exit on the wick (TP1), then second exit (TP2) either:
At a multiplied RR
Or at the daily close (“Close of Day”)
You can also choose to move SL to breakeven after TP1 is hit.
Live Metrics Table
In the upper-right corner it displays in real time:
Start of backtest (date of first trade)
Number of ✅ Winning trades and ❌ Losing trades
Total number of trades
Win rate (%)
Profit Factor
All within a fixed table layout so it never runs out of rows or columns.
nineLivesUtilLibLibrary "nineLivesUtilLib"
isDateInRange(currentTime, useTimeFilter, startDate, endDate)
Checks if the current time is within the specified date range.
Parameters:
currentTime (int) : The current bar's time (time).
useTimeFilter (bool) : Bool 📅: Enable the date range filter.
startDate (int) : Timestamp 📅: The start date for the filter.
endDate (int) : Timestamp 📅: The end date for the filter.
Returns: True if the current time is within the range or filtering is disabled, false otherwise.
@example
inDateRange = nineLivesUtilLib.isDateInRange(time, useTimeFilter, startDate, endDate)
if inDateRange
// Execute trading logic
checkVolumeCondition(currentVolume, useVolumeFilter, volumeThresholdMultiplier, volumeLength)
Checks if the current volume meets the threshold condition.
Parameters:
currentVolume (float) : The current bar's volume (volume).
useVolumeFilter (bool) : Bool 📊: Enable the volume filter.
volumeThresholdMultiplier (float) : Float 📊: Volume threshold relative to average (e.g., 1.5 for 1.5x average).
volumeLength (int) : Int 📊: Lookback length for the volume average.
Returns: True if the volume condition is met or filtering is disabled, false otherwise.
@example
volumeOk = nineLivesUtilLib.checkVolumeCondition(volume, useVolumeFilter, volumeThreshold, volumeLength)
if volumeOk
// Proceed with trading logic
checkMultiTimeframeCondition(currentClose, currentOpen, htfClose, htfOpen, useMultiTimeframe, alignment)
Checks alignment with higher timeframe direction.
Parameters:
currentClose (float) : Float: The current bar's closing price (close).
currentOpen (float) : Float: The current bar's opening price (open).
htfClose (float) : Float: The closing price from the higher timeframe (must be fetched by the calling script using request.security).
htfOpen (float) : Float: The opening price from the higher timeframe (must be fetched by the calling script using request.security).
useMultiTimeframe (bool) : Bool ⏱️: Enable multi-timeframe analysis.
alignment (string) : String ⏱️: Desired alignment ("same", "opposite", "any").
Returns: True if the timeframe alignment condition is met or analysis is disabled, false otherwise.
@example
// In the calling script:
= request.security(syminfo.tickerid, higherTimeframe, )
tfOk = nineLivesUtilLib.checkMultiTimeframeCondition(close, open, htfClose, htfOpen, useMultiTimeframe, tfAlignment)
if tfOk
// Proceed with trading logic
checkMarketRegime(useMarketRegime, regimeIndicator, regimeThreshold, regimeLength, regimeMode)
Detects the market regime (trending or ranging) and checks if trading is allowed.
Parameters:
useMarketRegime (bool) : Bool 🔍: Enable market regime detection.
regimeIndicator (string) : String 🔍: Indicator to use ("ADX" or "Volatility").
regimeThreshold (int) : Int 🔍: Threshold for trend strength/volatility.
regimeLength (simple int) : Int 🔍: Lookback length for the indicator.
regimeMode (string) : String 🔍: Trading mode based on regime ("trend_only", "range_only", "adaptive").
Returns: A tuple containing:
: conditionMet (bool) - True if trading is allowed based on the regime mode and detection, false otherwise.
: inTrendingRegime (bool) - True if the current regime is trending based on the indicator and threshold.
@example
= nineLivesUtilLib.checkMarketRegime(useMarketRegime, regimeIndicator, regimeThreshold, regimeLength, regimeMode)
if regimeOk
// Proceed with trading logic
applyCooldown(buySignal, sellSignal, cooldownBars)
Applies a cooldown period after a signal.
Parameters:
buySignal (bool) : Bool: Buy signal (potentially after primary entry logic).
sellSignal (bool) : Bool: Sell signal (potentially after primary entry logic).
cooldownBars (int) : Int ⏳: The number of bars to wait after a signal before allowing another.
Returns: A tuple containing:
: cooldownFilteredBuy (bool) - Buy signal after cooldown filter.
: cooldownFilteredSell (bool) - Sell signal after cooldown filter.
@example
= nineLivesUtilLib.applyCooldown(rawBuySignal, rawSellSignal, iCool)
applyAllFilters(rawBuy, rawSell, inDateRange, tradeDirection, volumeOk, tfOk, regimeOk, drawdownOk, cooldownOkBuy, cooldownOkSell)
Applies all filtering conditions to the buy and sell signals.
Parameters:
rawBuy (bool) : Bool: The initial buy signal candidate (from primary entry logic, e.g., after cooldown).
rawSell (bool) : Bool: The initial sell signal candidate (from primary entry logic, e.g., after cooldown).
inDateRange (bool) : Bool 📅: Result from isDateInRange.
tradeDirection (string) : String 🔄: Overall trade direction preference ("longs_only", "shorts_only", "both").
volumeOk (bool) : Bool 📊: Result from checkVolumeCondition.
tfOk (bool) : Bool ⏱️: Result from checkMultiTimeframeCondition.
regimeOk (bool) : Bool 🔍: Result from checkMarketRegime.
drawdownOk (bool) : Bool 📉: Result from checkDrawdownExceeded (or equivalent).
cooldownOkBuy (bool) : Bool ⏳: Result from applyCooldown for buy.
cooldownOkSell (bool) : Bool ⏳: Result from applyCooldown for sell.
Returns: A tuple containing:
: finalBuySignal (bool) - The final buy signal after all filters.
: finalSellSignal (bool) - The final sell signal after all filters.
@example
= nineLivesUtilLib.applyAllFilters(cooldownBuy, cooldownSell, inDateRange, tradeDirection, volumeOk, tfOk, regimeOk, !drawdownExceeded, cooldownBuy, cooldownSell)
NOTE: This function filters signals generated by your primary entry logic (e.g., EMA crossover).
checkDrawdownExceeded(currentEquity, useMaxDrawdown, maxDrawdownPercent)
Tracks maximum equity and checks if current drawdown exceeds a threshold.
Parameters:
currentEquity (float) : Float: The strategy's current equity (strategy.equity).
useMaxDrawdown (bool) : Bool 📉: Enable max drawdown protection.
maxDrawdownPercent (float) : Float 📉: The maximum allowed drawdown as a percentage.
Returns: True if drawdown protection is enabled and the current drawdown exceeds the threshold, false otherwise.
@example
drawdownExceeded = nineLivesUtilLib.checkDrawdownExceeded(strategy.equity, useMaxDrawdown, maxDrawdownPercent)
if drawdownExceeded
// Consider stopping entries or exiting positions in the strategy script
calculateExitPrice(positionAvgPrice, percentage, isStop, isLong)
Calculates a stop loss or take profit price based on a percentage from the average entry price.
Parameters:
positionAvgPrice (float) : Float: The average price of the current position (strategy.position_avg_price).
percentage (float) : Float: The stop loss or take profit percentage (e.g., 2.0 for 2%).
isStop (bool) : Bool: True if calculating a stop loss price, false if calculating a take profit price.
isLong (bool) : Bool: True if the position is long, false if short.
Returns: The calculated stop price or take profit price, or na if no position or percentage is invalid.
@example
longSL = nineLivesUtilLib.calculateExitPrice(strategy.position_avg_price, stopLossPercent, true, true)
shortTP = nineLivesUtilLib.calculateExitPrice(strategy.position_avg_price, takeProfitPercent, false, false)
calculateTrailingStopLevel(positionAvgPrice, trailOffsetPercent, trailPercent, currentHigh, currentLow, isLong)
Calculates the current trailing stop level for a position.
Parameters:
positionAvgPrice (float) : Float: The average price of the current position (strategy.position_avg_price).
trailOffsetPercent (float) : Float 🔄: The percentage price movement to activate the trailing stop.
trailPercent (float) : Float 🔄: The percentage distance the stop trails behind the price.
currentHigh (float) : Float: The current bar's high (high).
currentLow (float) : Float: The current bar's low (low).
isLong (bool) : Bool: True if the position is long, false if short.
Returns: The calculated trailing stop price if active, otherwise na.
@example
longTrailStop = nineLivesUtilLib.calculateTrailingStopLevel(strategy.position_avg_price, trailOffset, trailPercent, high, low, true)
shortTrailStop = nineLivesUtilLib.calculateTrailingStopLevel(strategy.position_avg_price, trailOffset, trailPercent, high, low, false)
if not na(longTrailStop)
strategy.exit("Long Trail", from_entry="Long", stop=longTrailStop)
PowerHouse SwiftEdge AI v2.10 StrategyOverview
The PowerHouse SwiftEdge AI v2.10 Strategy is a sophisticated trading system designed to identify high-probability trade setups in forex, stocks, and cryptocurrencies. By combining multi-timeframe trend analysis, momentum signals, volume confirmation, and smart money concepts (Change of Character and Break of Structure ), this strategy offers traders a robust tool to capitalize on market trends while minimizing false signals. The strategy’s unique “AI” component analyzes trends across multiple timeframes to provide a clear, actionable dashboard, making it accessible for both novice and experienced traders. The strategy is fully customizable, allowing users to tailor its filters to their trading style.
What It Does
This strategy generates Buy and Sell signals based on a confluence of technical indicators and smart money concepts. It uses:
Multi-Timeframe Trend Analysis: Confirms the market’s direction by analyzing trends on the 1-hour (60M), 4-hour (240M), and daily (D) timeframes.
Momentum Filter: Ensures trades align with strong price movements to avoid choppy markets.
Volume Filter: Validates signals with above-average volume to confirm market participation.
Breakout Filter: Requires price to break key levels for added confirmation.
Smart Money Signals (CHoCH/BOS): Identifies reversals (CHoCH) and trend continuations (BOS) based on pivot points.
AI Trend Dashboard: Summarizes trend strength, confidence, and predictions across timeframes, helping traders make informed decisions without needing to analyze complex data manually.
The strategy also plots dynamic support and resistance trendlines, take-profit (TP) levels, and “Get Ready” signals to alert users of potential setups before they fully develop. Trades are executed with predefined take-profit and stop-loss levels for disciplined risk management.
How It Works
The strategy integrates multiple components to create a cohesive trading system:
Multi-Timeframe Trend Analysis:
The strategy evaluates trends on three timeframes (1H, 4H, Daily) using Exponential Moving Averages (EMA) and Volume-Weighted Average Price (VWAP). A trend is considered bullish if the price is above both the EMA and VWAP, bearish if below, or neutral otherwise.
Signals are only generated when the trend on the user-selected higher timeframe aligns with the trade direction (e.g., Buy signals require a bullish higher timeframe trend). This reduces noise and ensures trades follow the broader market context.
Momentum Filter:
Measures the percentage price change between consecutive bars and compares it to a volatility-adjusted threshold (based on the Average True Range ). This ensures trades are taken only during significant price movements, filtering out low-momentum conditions.
Volume Filter (Optional):
Checks if the current volume exceeds a long-term average and shows positive short-term volume change. This confirms strong market participation, reducing the risk of false breakouts.
Breakout Filter (Optional):
Requires the price to break above (for Buy) or below (for Sell) recent highs/lows, ensuring the signal aligns with a structural shift in the market.
Smart Money Concepts (CHoCH/BOS):
Change of Character (CHoCH): Detects potential reversals when the price crosses under a recent pivot high (for Sell) or over a recent pivot low (for Buy) with a bearish or bullish candle, respectively.
Break of Structure (BOS): Confirms trend continuations when the price breaks below a recent pivot low (for Sell) or above a recent pivot high (for Buy) with strong momentum.
These signals are plotted as horizontal lines with labels, making it easy to visualize key levels.
AI Trend Dashboard:
Combines trend direction, momentum, and volatility (ATR) across timeframes to calculate a trend score. Scores above 0.5 indicate an “Up” trend, below -0.5 indicate a “Down” trend, and otherwise “Neutral.”
Displays a table summarizing trend strength (as a percentage), AI confidence (based on trend alignment), and Cumulative Volume Delta (CVD) for market context.
A second table (optional) shows trend predictions for 1H, 4H, and Daily timeframes, helping traders anticipate future market direction.
Dynamic Trendlines:
Plots support and resistance lines based on recent swing lows and highs within user-defined periods (shortTrendPeriod, longTrendPeriod). These lines adapt to market conditions and are colored based on trend strength.
Why This Combination?
The PowerHouse SwiftEdge AI v2.10 Strategy is original because it seamlessly integrates traditional technical analysis (EMA, VWAP, ATR, volume) with smart money concepts (CHoCH, BOS) and a proprietary AI-driven trend analysis. Unlike standalone indicators, this strategy:
Reduces False Signals: By requiring confluence across trend, momentum, volume, and breakout filters, it minimizes trades in choppy or low-conviction markets.
Adapts to Market Context: The ATR-based momentum threshold adjusts dynamically to volatility, ensuring signals remain relevant in both trending and ranging markets.
Simplifies Decision-Making: The AI dashboard distills complex multi-timeframe data into a user-friendly table, eliminating the need for manual analysis.
Leverages Smart Money: CHoCH and BOS signals capture institutional price action patterns, giving traders an edge in identifying reversals and continuations.
The combination of these components creates a balanced system that aligns short-term trade entries with longer-term market trends, offering a unique blend of precision, adaptability, and clarity.
How to Use
Add to Chart:
Apply the strategy to your TradingView chart on a liquid symbol (e.g., EURUSD, BTCUSD, AAPL) with a timeframe of 60 minutes or lower (e.g., 15M, 60M).
Configure Inputs:
Pivot Length: Adjust the number of bars (default: 5) to detect pivot highs/lows for CHoCH/BOS signals. Higher values reduce noise but may delay signals.
Momentum Threshold: Set the base percentage (default: 0.01%) for momentum confirmation. Increase for stricter signals.
Take Profit/Stop Loss: Define TP and SL in points (default: 10 each) for risk management.
Higher/Lower Timeframe: Choose timeframes (60M, 240M, D) for trend filtering. Ensure the chart timeframe is lower than or equal to the higher timeframe.
Filters: Enable/disable momentum, volume, or breakout filters to suit your trading style.
Trend Periods: Set shortTrendPeriod (default: 30) and longTrendPeriod (default: 100) for trendline plotting. Keep below 2000 to avoid buffer errors.
AI Dashboard: Toggle Enable AI Market Analysis to show/hide the prediction table and adjust its position.
Interpret Signals:
Buy/Sell Labels: Green "Buy" or red "Sell" labels indicate trade entries with predefined TP/SL levels plotted.
Get Ready Signals: Yellow "Get Ready BUY" or orange "Get Ready SELL" labels warn of potential setups.
CHoCH/BOS Lines: Aqua (CHoCH Sell), lime (CHoCH Buy), fuchsia (BOS Sell), or teal (BOS Buy) lines mark key levels.
Trendlines: Green/lime (support) or fuchsia/purple (resistance) dashed lines show dynamic support/resistance.
AI Dashboard: Check the top-right table for trend strength, confidence, and CVD. The optional bottom table shows trend predictions (Up, Down, Neutral).
Backtest and Trade:
Use TradingView’s Strategy Tester to evaluate performance. Adjust TP/SL and filters based on results.
Trade manually based on signals or automate with TradingView alerts (set alerts for Buy/Sell labels).
Originality and Value
The PowerHouse SwiftEdge AI v2.10 Strategy stands out by combining multi-timeframe analysis, smart money concepts, and an AI-driven dashboard into a single, user-friendly system. Its adaptive momentum threshold, robust filtering, and clear visualizations empower traders to make confident decisions without needing advanced technical knowledge. Whether you’re a day trader or swing trader, this strategy provides a versatile, data-driven approach to navigating dynamic markets.
Important Notes:
Risk Management: Always use appropriate position sizing and risk management, as the strategy’s TP/SL levels are customizable.
Symbol Compatibility: Test on liquid symbols with sufficient historical data (at least 2000 bars) to avoid buffer errors.
Performance: Backtest thoroughly to optimize settings for your market and timeframe.
Williams R Zone Scalper v1.0[BullByte]Originality & Usefulness
Unlike standard Williams R cross-over scripts, this strategy layers five dynamic filters—moving-average trend, Supertrend, Choppiness Index, Bollinger Band Width, and volume validation —and presents a real-time dashboard with equity, PnL, filter status, and key indicator values. No other public Pine script combines these elements with toggleable filters and a custom dashboard. In backtests (BTC/USD (Binance), 5 min, 24 Mar 2025 → 28 Apr 2025), adding these filters turned a –2.09 % standalone Williams R into a +5.05 % net winner while cutting maximum drawdown in half.
---
What This Script Does
- Monitors Williams R (length 14) for overbought/oversold reversals.
- Applies up to five dynamic filters to confirm trend strength and volatility direction:
- Moving average (SMA/EMA/WMA/HMA)
- Supertrend line
- Choppiness Index (CI)
- Bollinger Band Width (BBW)
- Volume vs. its 50-period MA
- Plots blue arrows for Long entries (R crosses above –80 + all filters green) and red arrows for Short entries (R crosses below –20 + all filters green).
- Optionally sets dynamic ATR-based stop-loss (1.5×ATR) and take-profit (2×ATR).
- Shows a dashboard box with current position, equity, PnL, filter status, and real-time Williams R / MA/volume values.
---
Backtest Summary (BTC/USD(Binance), 5 min, 24 Mar 2025 → 28 Apr 2025)
• Total P&L : +50.70 USD (+5.05 %)
• Max Drawdown : 31.93 USD (3.11 %)
• Total Trades : 198
• Win Rate : 55.05 % (109/89)
• Profit Factor : 1.288
• Commission : 0.01 % per trade
• Slippage : 0 ticks
Even in choppy March–April, this multi-filter approach nets +5 % with a robust risk profile, compared to –2.09 % and higher drawdown for Williams R alone.
---
Williams R Alone vs. Multi-Filter Version
• Total P&L :
– Williams R alone → –20.83 USD (–2.09 %)
– Multi-Filter → +50.70 USD (+5.05 %)
• Max Drawdown :
– Williams R alone → 62.13 USD (6.00 %)
– Multi-Filter → 31.93 USD (3.11 %)
• Total Trades : 543 vs. 198
• Win Rate : 60.22 % vs. 55.05 %
• Profit Factor : 0.943 vs. 1.288
---
Inputs & What They Control
- wrLen (14): Williams R look-back
- maType (EMA): Trend filter type (SMA, EMA, WMA, HMA)
- maLen (20): Moving-average period
- useChop (true): Toggle Choppiness Index filter
- ciLen (12): CI look-back length
- chopThr (38.2): CI threshold (below = trending)
- useVol (true): Toggle volume-above-average filter
- volMaLen (50): Volume MA period
- useBBW (false): Toggle Bollinger Band Width filter
- bbwMaLen (50): BBW MA period
- useST (false): Toggle Supertrend filter
- stAtrLen (10): Supertrend ATR length
- stFactor (3.0): Supertrend multiplier
- useSL (false): Toggle ATR-based SL/TP
- atrLen (14): ATR period for SL/TP
- slMult (1.5): SL = slMult × ATR
- tpMult (2.0): TP = tpMult × ATR
---
How to Read the Chart
- Blue arrow (Long): Williams R crosses above –80 + all enabled filters green
- Red arrow (Short) : Williams R crosses below –20 + all filters green
- Dashboard box:
- Top : position and equity
- Next : cumulative PnL in USD & %
- Middle : green/white dots for each filter (green=passing, white=disabled)
- Bottom : Williams R, MA, and volume current values
---
Usage Tips
- Add the script : Indicators → My Scripts → Williams R Zone Scalper v1.0 → Add to BTC/USD chart on 5 min.
- Defaults : Optimized for BTC/USD.
- Forex majors : Raise `chopThr` to ~42.
- Stocks/high-beta : Enable `useBBW`.
- Enable SL/TP : Toggle `useSL`; stop-loss = 1.5×ATR, take-profit = 2×ATR apply automatically.
---
Common Questions
- * Why not trade every Williams R reversal?*
Raw Williams R whipsaws in sideways markets. Choppiness and volume filters reduce false entries.
- *Can I use on 1 min or 15 min?*
Yes—adjust ATR length or thresholds accordingly. Defaults target 5 min scalping.
- *What if all filters are on?*
Fewer arrows, higher-quality signals. Expect ~10 % boost in average win size.
---
Disclaimer & License
Trading carries risk of loss. Use this script “as is” under the Mozilla Public License 2.0 (mozilla.org). Always backtest, paper-trade, and adjust risk settings to your own profile.
---
Credits & References
- Pine Script v6, using TradingView’s built-in `ta.supertrend()`.
- TradingView House Rules: www.tradingview.com
Goodluck!
BullByte
PowerHouse SwiftEdge AI v2.10 with Custom Filters & AI AnalysisPowerHouse SwiftEdge AI v2.10 with Custom Filters & AI Analysis
Overview
PowerHouse SwiftEdge AI v2.10 is an advanced TradingView Pine Script indicator designed to identify high-probability trading setups by combining pivot-based structure analysis, multi-timeframe trend detection, and adaptive AI-driven signal filtering. The script integrates Change of Character (CHoCH) and Break of Structure (BOS) signals with customizable momentum, volume, breakout, and trend filters to enhance trade precision. Additionally, it offers an optional AI Market Analysis module that predicts future price trends across multiple timeframes, providing traders with a comprehensive market outlook.
The script is highly customizable, allowing users to tailor inputs to their trading style, whether for scalping, swing trading, or long-term strategies. It is suitable for all asset classes, including stocks, forex, crypto, and commodities, and performs optimally on timeframes ranging from 1-minute to daily charts.
Key Features
Pivot-Based Signal Generation:
Identifies pivot highs and lows to detect CHoCH (reversal patterns) and BOS (continuation patterns).
Signals are plotted as "Buy" or "Sell" labels with optional "Get Ready" pre-signals to prepare traders for potential setups.
Take-profit (TP) levels are automatically calculated based on user-defined points, with optional TP box visualization.
Multi-Timeframe Trend Analysis:
Analyzes trends across seven timeframes (1M, 5M, 15M, 30M, 1H, 4H, D) using EMA and VWAP to determine bullish, bearish, or neutral conditions.
Displays a futuristic AI-Trend Matrix dashboard showing trend direction, strength, and confidence levels for quick decision-making.
Customizable Signal Filters:
Momentum Filter: Ensures signals align with significant price changes, adjusted dynamically using ATR-based volatility.
Higher Timeframe Trend Filter: Requires signals to align with the trend of a user-selected higher timeframe (e.g., 1H).
Lower Timeframe Trend Filter: Prevents signals that conflict with the trend of a user-selected lower timeframe (e.g., 5M).
Volume Filter: Optionally requires above-average volume to confirm signals.
Breakout Filter: Optionally requires price to break previous highs/lows for signal validation.
Repeated Signal Restriction: Prevents consecutive signals in the same trend direction until the trend changes on a user-defined timeframe.
AI-Driven Adaptivity:
Incorporates Cumulative Volume Delta (CVD) to assess buying/selling pressure and classify market volatility (Low, Medium, High).
Uses ATR to dynamically adjust momentum thresholds, ensuring signals adapt to current market conditions.
Optional AI Market Analysis module predicts trends across multiple timeframes by combining trend, momentum, and volatility scores.
Visual Elements:
Plots CHoCH and BOS levels as horizontal lines with distinct colors (aqua for CHoCH sell, lime for CHoCH buy, fuchsia for BOS sell, teal for BOS buy).
Draws dynamic support and resistance trendlines based on short and long-term price action, colored by trend strength.
Displays TP levels and pivot highs/lows for easy reference.
How It Works
The script combines several technical analysis concepts to create a robust trading system:
Market Structure Analysis:
Pivot highs and lows are identified using a user-defined lookback period (Pivot Length).
CHoCH occurs when price crosses below a pivot high (bearish reversal) or above a pivot low (bullish reversal).
BOS occurs when price breaks a previous pivot low (bearish continuation) or pivot high (bullish continuation).
Trend and Momentum Integration:
Trends are determined by comparing price to EMA and VWAP on multiple timeframes.
Momentum is calculated as the percentage price change, with thresholds adjusted by ATR to account for volatility.
"Get Ready" signals appear when momentum approaches the threshold, preparing traders for potential CHoCH or BOS signals.
Signal Filtering:
Filters ensure signals align with user-defined criteria (e.g., trend direction, volume, breakouts).
The Restrict Repeated Signals option prevents over-signaling by requiring a trend change on a specified timeframe before generating a new signal in the same direction.
AI Market Analysis:
The optional AI module calculates a score for each timeframe based on trend direction, momentum, and volatility (ATR compared to its SMA).
Scores are translated into predictions (▲ for bullish, ▼ for bearish, — for neutral), displayed in a dedicated table.
CVD and Volatility Context:
CVD tracks buying vs. selling pressure by accumulating volume based on price direction.
Volatility is classified using CVD magnitude, influencing the script’s visual cues and signal sensitivity.
Why This Combination?
The integration of pivot-based structure analysis, multi-timeframe trend filtering, and AI-driven adaptivity addresses common trading challenges:
Precision: CHoCH and BOS signals focus on key market turning points, reducing noise from minor price fluctuations.
Context: Multi-timeframe analysis ensures trades align with broader market trends, improving win rates.
Adaptivity: ATR and CVD adjustments make the script responsive to changing market conditions, avoiding static thresholds that fail in volatile or quiet markets.
Customization: Extensive input options allow traders to adapt the script to their preferred markets, timeframes, and risk profiles.
Predictive Insight: The AI Market Analysis module provides forward-looking trend predictions, helping traders anticipate market moves.
This combination creates a self-contained system that balances responsiveness with reliability, making it suitable for both novice and experienced traders.
How to Use
Add to Chart:
Apply the indicator to your TradingView chart for any asset and timeframe.
Recommended timeframes: 5M to 1H for scalping/day trading, 4H to D for swing trading.
Configure Inputs:
Pivot Length: Adjust (default 5) to control sensitivity to pivot highs/lows. Lower values for faster signals, higher for stronger confirmations.
Momentum Threshold: Set the minimum price change (default 0.01%) for signals. Increase for stricter conditions.
Take Profit Points: Define TP distance (default 10 points). Adjust based on asset volatility.
Signal Filters: Enable/disable filters (momentum, trend, volume, breakout) to match your strategy.
Higher/Lower Timeframe: Select timeframes for trend alignment (e.g., 1H for higher, 5M for lower).
AI Market Analysis: Enable for predictive trend insights across timeframes.
Get Ready Signals: Enable to see pre-signals for potential setups.
Interpret Signals:
Buy/Sell Labels: Act on green "Buy" or red "Sell" labels, confirming with TP levels and trend direction.
Get Ready Labels: Yellow "Get Ready BUY" or orange "Get Ready SELL" indicate potential setups; prepare but wait for confirmation.
CHoCH/BOS Lines: Use aqua/lime (CHoCH) and fuchsia/teal (BOS) lines as key support/resistance levels.
AI-Trend Matrix: Check the top-right dashboard for trend strength (%), confidence (%), and timeframe-specific trends.
AI Market Analysis Table: If enabled, view predictions (▲/▼/—) for each timeframe to anticipate market direction.
Trading Tips:
Combine signals with other indicators (e.g., RSI, MACD) for additional confirmation.
Use higher timeframe trend alignment for higher-probability trades.
Adjust TP and signal distance based on asset volatility and trading style.
Monitor the AI-Trend Matrix for trend strength; values above 50% or below -50% indicate strong directional bias.
Originality
PowerHouse SwiftEdge AI v2.10 stands out due to its unique blend of:
Adaptive Signal Generation: ATR-based momentum thresholds and CVD-driven volatility context ensure signals remain relevant across market conditions.
Multi-Timeframe Synergy: The script’s ability to filter signals based on both higher and lower timeframe trends provides a rare balance of precision and context.
AI-Powered Insights: The AI Market Analysis module offers predictive capabilities not commonly found in traditional indicators, simulating institutional-grade analysis.
Visual Clarity: The futuristic dashboard and color-coded trendlines make complex data accessible, enhancing usability for all trader levels.
Unlike standalone pivot or trend indicators, this script integrates multiple layers of analysis into a cohesive system, reducing false signals and providing actionable insights without requiring external tools or research.
Limitations
False Signals: No indicator is foolproof; signals may fail in choppy or low-volume markets. Use filters to mitigate.
Timeframe Sensitivity: Performance varies by timeframe and asset. Test settings thoroughly.
AI Predictions: The AI Market Analysis is based on historical data and simplified scoring; it’s not a guaranteed forecast.
Resource Usage: Enabling all filters and AI analysis may slow performance on lower-end devices.
ka66: ADR EstimationThis is based on Daryl Guppy's Average Daily Range indicator, the link is difficult to find, but it is an estimation/projection indicator for a daily range.
The thesis is (if I understand correctly):
The range (high - low) of a particular day can be determined, with 85% probability, by taking the ranges of the last 5 days, and getting their average, then multiplying this average value by 0.75. This final value is the estimated range for the next day.
The indicator does not say anything about potential direction, so it may be used as a Take Profit or Stop Loss estimator for the trading strategy in use. Either on the daily timeframe, or an intraday timeframe.
And if we enter the market intraday for a day trade, when the day's range has already exceeded or is close to exceeding the estimated/projected value, perhaps the move is already quite exhausted, and the trade needs to be reconsidered.
A further implication is: if 0.75 multiple occurs with 85% probability, then a lower multiple is even more probable, if one was looking for a more conservative estimate.
The indicator shows three things for a visual inspection of the validity of this concept (and allows basic customisation of parameters):
The day's range, shown in a translucent gray/deep green, as columns. This is the current bar's range. If intraday, it will repaint.
The 5 day average up to the current bar, shown as a step-line plot in orange. If intraday, it will repaint.
The projected range: a thinner blue histogram column, this is offset one bar forward, as it is a future estimate/forward-looking. It too will repaint if the current day is still not complete.
To evaluate the historical results of the chosen settings visually (eye-ball it!), compare the blue histogram bar to the gray bar/column, i.e. the estimate vs. actual range:
When the blue bar is generally within the gray column, and close enough to that column's size/range, then the projected estimation has been reasonable.
if the blue bar tends to be relatively smaller than the gray bar, then we are underestimating often. Increase the projection multiple setting, as a simple fix.
if the blue bar tends to exceed the range of the gray bar a lot, we are overestimating often. Lower the projection multiple setting, as a simple fix.
Guppy's document says that they basically calculate this ADR for multiple markets and focus on markets with the top 5 ranges (in descending order, of course), to maximise the profit potential on intraday trades planned for the next day. Because it is an estimation, this calculation can be run at the end of the day on completed bars.
This indicator also allows displaying the value as percentages, taking the logic of the ATR% (ATR Percent) indicator, which divides the ATR by the close value and multiplies it by 100 to get a normalised percentage value, allowing it to be compared across markets (but in the same timeframe!).
Supertrend X2 + CalcSize Calculator:
Size Calculator is a risk management tool that helps traders position themselves intelligently by calculating optimal position size, stop loss, and take profit levels based on account capital, ATR volatility, and personal risk tolerance. It takes the guesswork out of sizing so you can focus on execution.
Features:
✅ Risk-based position sizing
✅ ATR-based stop loss & take profit levels
✅ Dynamic leverage estimation
✅ Support for long and short positions
✅ Visual display of key levels and metrics via table
✅ Works across any timeframe with locked timeframe support
How It Works:
This tool computes the ideal position size as a % of account capital based on how much you're willing to risk per trade and how far your stop loss is (in ATR units). It calculates corresponding stop loss and take profit prices, and visually plots them along with a floating table of metrics. You can lock the timeframe used for ATR and price, keeping your risk logic stable even when changing chart views.
Customizable Inputs:
Account capital and risk tolerance
ATR-based stop loss & take profit multiples
Trade direction (Long or Short)
ATR period and locked timeframe
Optional detailed metrics display
Dual SuperTrend:
The Dual Supertrend indicator enhances the classic Supertrend strategy by layering two customizable Supertrend signals with independent ATR settings. This setup gives you a deeper, more nuanced read on trend strength and potential entry zones.
Features:
✅ Two Supertrend lines (each with adjustable ATR periods and multipliers)
✅ Optional Heikin Ashi candle smoothing for noise reduction
✅ Color-coded trend background for fast visual analysis
✅ Multi-timeframe trend table overlay (customizable)
✅ Built-in signal logic to identify "Long", "Short", or "N/A" zones
✅ Built-in alerts from Long and Short Entry Zones
How It Works:
The script calculates two Supertrend levels using separate ATR settings. Trend direction is derived from the relationship between price and each band. When the larger (slower) Supertrend flips and the smaller (faster) confirms, it signals a potential entry. The multi-timeframe table helps you align trades across different timeframes.
Customizable Inputs:
ATR Periods & Multipliers for both Supertrends
Timeframes for entry zone detection (up to 4)
Enable/disable Heikin Ashi candles for smoother trend detection
position_toolLibrary "position_tool"
Trying to turn TradingView's position tool into a library from which you can draw position tools for your strategies on the chart. Not sure if this is going to work
calcBaseUnit()
Calculates the chart symbol's base unit of change in asset prices.
Returns: (float) A ticks or pips value of base units of change.
calcOrderPipsOrTicks(orderSize, unit)
Converts the `orderSize` to ticks.
Parameters:
orderSize (float) : (series float) The order size to convert to ticks.
unit (simple float) : (simple float) The basic units of change in asset prices.
Returns: (int) A tick value based on a given order size.
calcProfitLossSize(price, entryPrice, isLongPosition)
Calculates a difference between a `price` and the `entryPrice` in absolute terms.
Parameters:
price (float) : (series float) The price to calculate the difference from.
entryPrice (float) : (series float) The price of entry for the position.
isLongPosition (bool)
Returns: (float) The absolute price displacement of a price from an entry price.
calcRiskRewardRatio(profitSize, lossSize)
Calculates a risk to reward ratio given the size of profit and loss.
Parameters:
profitSize (float) : (series float) The size of the profit in absolute terms.
lossSize (float) : (series float) The size of the loss in absolute terms.
Returns: (float) The ratio between the `profitSize` to the `lossSize`
createPosition(entryPrice, entryTime, tpPrice, slPrice, entryColor, tpColor, slColor, textColor, showExtendRight)
Main function to create a position visualization with entry, TP, and SL
Parameters:
entryPrice (float) : (float) The entry price of the position
entryTime (int) : (int) The entry time of the position in bar_time format
tpPrice (float) : (float) The take profit price
slPrice (float) : (float) The stop loss price
entryColor (color) : (color) Color for entry line
tpColor (color) : (color) Color for take profit zone
slColor (color) : (color) Color for stop loss zone
textColor (color) : (color) Color for text labels
showExtendRight (bool) : (bool) Whether to extend lines to the right
Returns: (bool) Returns true when position is closed